CAP - Concurrent Action and Planning: Using PVM-Prolog to Implement Vivid Agents
نویسندگان
چکیده
ion it ranges between PVM-Prolog which is a pure paradigm extendedby message passing and a high-level multi-agent language such as vivid agents.7.3 ICEICE [Amt95, AB96] de nes a model to support distributed AI applications overhybrid languages and heterogeneous, distributed platforms. It is available fromProlog, Lisp, C, C++ and Tcl/Tk and is, similar to PVM-Prolog, implementedon top of PVM.Its communication model is point to point through named channels but italso supports broadcasting of messages to all components. Components maybe created dynamically but their communication topology must be de ned ina con guration le. Con guration of components and their communicationchannels is done through a con guration le by a special process, the licenseserver.PVM-Prolog, as ICE, also supports communication with tasks written indi erent languages. ICE's communication model is de ned at a higher levelthan PVM-Prolog's. However it is necessary to specify the topology of thecommunication before running the system this is a clear limitation in contrastwith PVM dynamic con guration, communication and process control features.7.4 Other Distributed Logic Programming LanguagesThe rst distributed logic programming language to appear in the literature isDelta-Prolog[LMP84, CCMP92]. Delta Prolog supports a declarative distrib-uted logic programming model which requires distributed backtracking mech-anisms which are di cult to implement. Other distributed logic program-ming systems such as PMS-Prolog[WJH92] and Shared-Prolog[BC91] elude theneed for distributed backtracking either by using message passing extra-logicalpredicates in the former or preventing it in the language syntax in the lat-ter. Shared-Prolog relies on the LINDA shared space communication modelwhile PMS-Prolog and PVM-Prolog use distributed space communication mod-els. Neither Shared-Prolog or PMS-Prolog support multi-threading of a Prologprocess. Delta-Prolog and PMS-Prolog have been implemented in transputermulti-computers Delta-Prolog has also been implemented in UNIX systems con-nected through local area networks.8 ConclusionTo conclude let us compare which of the requirements mentioned in the intro-duction are met in the current implementation of vivid agents and how theunderlying PVM-Prolog contributes.Reactive and Pro-active Behaviour The agents' reactive and pro-activebehaviour can be implemented by using PVM-Prolog's thread concept to run a17 perception-reaction-cycle concurrently to a planning facility. Such light-weightconcurrency has the advantage of fast communication between strongly con-nected parts of a single agent.Formal Semantics The formal semantics of the CAP architecture helps un-derstanding and allows program veri cation. The formal semantics is indepen-dent of PVM-Prolog as implementaiton language, but it was in uenced by theconcepts provided by PVM-Prolog and therefore easily implementable in PVM-Prolog.Executable Speci cations The idea of Prolog executing speci cations islifted by the vivid agent concept and its implementation in PVM-Prolog to ahigher and more declarative level of multi-agent speci cations.Hardware Independence PVM is hardware independent and available fora range of architectures including PCs, Workstations and Multi-computer plat-forms. PVM's and PVM-Prolog's hardware independence also makes vividagents more exible.Openness PVM is best suited for local area networks. A more appropriateglobal network interface is not yet implemented. Currently we are experiment-ing with Email. We included a primitive to send mails into PVM-Prolog andtranslate incoming emails addressed to the MAS to PVM messages.Heterogeneity PVM has been widely used up to now, so many tools anddi erent language interfaces are available. The PVM distribution supports Cand Fortran; interfaces for C++, Ada, Lisp, Perl, Tcl, and Prolog have subse-quently been developed. First results show that heterogeneous agents can runtogehter in a net but that the MAS con guration has to be public to ensurethat agents can use the proper formats to communicate. A possible solution is apublic yellow pages service, which might be implemented itsel n PVM-Prolog.AcknowledgementsWe would like to thankWolfgang Nejdl and Lu s Moniz Pereira for their support.Financially, the work was supported by the German BMBF, the PortugueseJNICT, and the PRAXIS PROLOPPE project.References[AB96]Jan W. Amtrup and Jorg Benra. Communication in large distrib-uted ai systems for natural language processing. In Proceedings ofthe 16th International Conference on Computational Linguistics,COLING-96., pages 35{40, Copenhagen, 1996.18 [Amt95]Jan W. Amtrup. ICE Intarc Communication Environment:User's Guide and Reference Manual. Version 1.4. University ofHamburg, 1995.[AP96]J. J. Alferes and L. M. Pereira. Reasoning with Logic Program-ming. (LNAI 1111), Springer-Verlag, 1996.[BC91]A. Brogi and P. Ciancarini. The concurrent language shared Pro-log. ACM Transations on Programming Languages and Systems,vol 13(1):99{123, January 1991.[CCMP92] J. C. Cunha, M. B. Carvalhosa, P. Medeiros, and L. M. Pereira.Delta Prolog: A distributed logic programming language and it'simplementation. In P. Kacksuk and Michael Wise, editors, Im-plementations of Distributed Prolog, chapter 15, pages 335{356.John Wiley & Sons, 1992.[Chu93]D. Chu. I.C. PROLOG II: A language for implementing multi-agent systems. In S. M. Dean, editor, Proceedings of the 1992Workshop on Cooperating Knowledge Based systems (CKBS92),pages 61{74. DAKE Centre, University of Keele, UK, 1993.[CM96]Jos e C. Cunha and Rui F. P. Marques. PVM-Prolog: A prologinterface to PVM. In Proceedings of the 1st Austrian-HungarianWorkshop on Distributed and Parallel Systems, DAPSYS'96,Miskolc, Hungary, 1996.[FdAMNS96] Peter Frohlich, Iara de Almeida Mora, Wolfgang Nejdl, andMichael Schroeder. Diagnostic agents for distributed systems.Technical report, University of Hannover, 1996. Accepted forModelAge97.[Gea94]Al Geist and et al. PVM: Parallel Virtual Machine. MIT Press,1994.[Hoa85]C. A. R. Hoare. Communicating Sequential Processes. PrenticeHall, 1985.[LMP84]R. Nasr L. M. Pereira. Delta Prolog: a distributed logic program-ming language. In FGCS, Tokyo, Japan, 1984.[MC95a]R. Marques and J. A. Cunha. PVM-Prolog { parallel logic pro-gramming with PVM. Technical report, F.C.T., UniversidadeNova de Lisboa, 1995. Presented at the PVM User's Group Meet-ing, Pittsburgh.[MC95b]F. G. McCabe and K. L. Clark. APRIL Agent PRocess Inter-action Language. In M. Wooldridge and N.R. Jennings, editors,Proceeding of ATAL94. (LNAI 890) Springer{Verlag, 1995.19 [SdAMP96] Michael Schroeder, Iara de Almeida Mora, and Lu s MonizPereira. A deliberative and reactive diagnosis agent based onlogic programming. In ATAL96 Agent Theories, Architecturesand Langugages. Springer{Verlag, 1996. To appear.[Sho93]Yoav Shoham. Agent-oriented programming. Arti cial Intelli-gence, 60(1):51{92, 1993.[SW96]Michael Schroeder and Gerd Wagner. Distributed diagnosis byvivid agents. In Proceedings of First Internationl Conference onAuonomous Agents, AA97. ACM Press, 1996. To appear.[Wag96]Gerd Wagner. A logical and operational model of scalableknowledge-and perception-based agents. In Proceedings of MAA-MAW96, LNAI 1038. Springer-Verlag, 1996.[War74]D. H. D. Warren. WARPLAN: A system for generating plans.Technical report, Dept. of Computational Logic Memo 76, Arti-cial Intelligence, Edinburgh University, 1974.[WJH92]M. J. Wise, D. G. Jones, and T. Hintz. PMS-prolog: A distrib-uted, coarse-grain-parallel prolog with processes, modules andstreams. In Peter Kacksuck and Michael J. Wise, editors, Im-plementations of Distributed Prolog, chapter 17, pages 379{404.Jonh Wiley & Sons Ltd., 1992.20
منابع مشابه
Vivid Agents: Theory, Architecture, and Applications
Vivid agents [48] are software-controlled systems whose state comprises the mental components of knowledge, perceptions, tasks, and intentions, and whose behaviour is represented by means of action and reaction rules. We present an execution model for vivid agents which is based on an architecture for concurrent action and planning (CAP). We evaluate the concept of vivid agents and the CAP arch...
متن کاملVivid Agents: How They Deliberate, How they React, How They Are Veri ed
We propose a model of an agent which is both logical and operational. Our model of vivid agents takes into account that agents need not only the ability to draw inferences but also to update their current knowledge state, to represent and to perform (and to simulate the execution of) actions in order to generate and execute plans, and to react and interact in response to perception and communic...
متن کاملAn Investigation of Multi-Agent Planning in CLP
This paper explores the use of Constraint Logic Programming (CLP) as a platform for experimenting with planning problems in the presence of multiple interacting agents. The paper develops a novel constraintbased action language, BMAP, that enables the declarative description of large classes of multi-agent and multi-valued domains. BMAP supports several complex features, including combined effe...
متن کاملMonitoring PVM Programs Using the DAMS Approach
Monitoring tools are fundamental components of a development environment as they provide basic support for performance evaluation, debugging, and program visualization. We describe our experiments with several monitoring tools for PVM, namely XPVM, developed at ORNL, Tape/PVM, developed at IMAG Lab, and DAMS, developed at UNL. These tools are compared and their use is described to support instr...
متن کاملUsing PVM With a Logic Programming Interface
In this document we summarize the functionality of a Parallel Logic Programming system based on PVM. The Prolog interactive interpreter, with its powerful built-in mechanisms of unification and backtracking is particularly well suited for dynamic interaction with the parallel system. Although Logic Programming has a declarative nature, Prolog has also a procedural interpretation upon which we r...
متن کامل